// 功能：获取世界坐标到屏幕ui坐标
Vector3 set_ui(Vector3 p_pos,RectTransform r){
	// 转为以左下角为原点的视口坐标(0-1)
	Vector3 p= Camera.main.WorldToViewportPoint(p_pos);
	if(p.z<0){p.y=p.x<0.5?1:0;}
	else{p.x = Mathf.Clamp(p.x, 0, 1);}
	p.y = Mathf.Clamp(p.y, 0, 1);
	p.x*= r.rect.width;
	p.y*= r.rect.height;
	p.z = 0;
	return p;

}
// 调用
// ui.position = set_ui(Vec3,canvas.GetComponent<RectTransform>());


